#ifndef TEMPLE_ECHOER_COMM_H_
#define TEMPLE_ECHOER_COMM_H_

#include "config.h"
#include "mod/listener.h"
#include "mod/queue_handler.h"

const string PROJECT = "echoer";
const string VERSION = "0.0.1";

class Global : public SuperGlobal
{
public:
    bool still_alive;
    util::Logger logger;
    util::Proper proper;

    mod::Listener listener;
    mod::QueueHandler<std::pair<u64, strref>> echo_handler;
};

inline Global &global()
{
    static Global global_entity;
    return global_entity;
}

#endif //TEMPLE_ECHOER_COMM_H_
